﻿using System;
using System.IO;

namespace MyLib.IO {
	/// <summary>
	/// 
	/// </summary>
	public sealed class FileObject {
		/// <summary>
		/// 
		/// </summary>
		public string Id { get; private set; }

		/// <summary>
		/// 
		/// </summary>
		public int FileType { get; private set; }

		/// <summary>
		/// 
		/// </summary>
		public string ObjectId { get; private set; }

		/// <summary>
		/// 
		/// </summary>
		public long Size { get; private set; }

		/// <summary>
		/// 
		/// </summary>
		public string Name { get; private set; }

		/// <summary>
		/// 
		/// </summary>
		public byte[] Content { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public string Description { get; private set; }

		/// <summary>
		/// 
		/// </summary>
		public string Summary { get; private set; }

		/// <summary>
		/// 
		/// </summary>
		/// <param name="id"></param>
		/// <param name="name"></param>
		/// <param name="fileType"></param>
		/// <param name="objectId"></param>
		/// <param name="size"></param>
		/// <param name="description"></param>
		/// <param name="summary"></param>
		public FileObject(string id, string name, int fileType, string objectId, long size, string description = "", string summary = "") {
			Id = id;
			Name = name;
			FileType = fileType;
			ObjectId = objectId;
			Size = size;
			Content = null;
			Description = description;
			Summary = summary;
		}
	} // end of FileObject.
}
